<?php
namespace app\models; //这个叫命名空间,为的是,在yii整体结构中,把这个文件挂载上去
use yii\base\Model; //引入公共组件
use yii\web\UploadedFile;//这是干什么的,从哪来的  在Yii里上传文件通常使用 yii\web\UploadedFile 类， 它把每个上传的文件封装成 UploadedFile 对象。 结合 yii\widgets\ActiveForm 和 models，你可以轻松实现安全的上传文件机制。

class UploadForm extends Model { //这个是文件记录表
    public $File;
    public $path;
    public $key;
    public $title;
    public $img_path;
    public $showImg;
    public $link_to;
    public $isNewRecord;
    public $username;
    public $password;
    public $sex;
    public $edu;
    public $file;
    public $hobby;
    public $info;
    public $userid;
    public $name;
    public $email;
    public $description;
    public $note;
    public $storagetime;
    public $project;
    public $test;
    public $selectproject;
    public $totalSize;
    public $count;
    public $totalRealSize;

    public function rules(){ //写这个函数,就在程序中调用,而不用每次都写
        return[
          [
            ['File'],'file' ,// File 这个是字段 file是表明字段类型
              'skipOnEmpty' => false,
              'extensions' => 'mp4,jpg,exe,png,MP4',
              'maxSize'=>200*100*100*100*100*100*100*100*100*100*100*100*100,
          ],
        ];
    }
    //File 是字段名
    //extensions 允许上传的文件类型

    //php参数
    //post_max_size=800000M
    //upload_max_filesize=20000000M
    //max_file_uploads=20000000
    public function upload()
    {
        if ($this->validate()) {
            $filename=$this->File->baseName . '.' . $this->File->extension;//文件名
            $filePath='uploads/' . $filename; //文件保存路径
            $this->File->saveAs($filePath);//保存文件
            //dd($filePath);
            return true;
        } else {
            return false;
        }
    }
}

